package main

import (
	"go-ecommerce/config"
	"go-ecommerce/internal/router"
	"go-ecommerce/internal/utils"
	"log"
)

func main() {

	// 加载配置文件

	if err := config.InitConfig(); err != nil {
		log.Fatalf("配置文件加载失败: %v", err)
	}

	// 初始化日志
	utils.InitLogger()

	// 初始化数据库连接

	if err := config.InitDB(); err != nil {

		//utils.Response.Fatalf("数据库连接失败: %v", err)
		log.Fatalf("数据库连接失败: %v", err)
	}

	// 初始化Redis连接(如果需要)
	if err := config.InitRedis(); err != nil {
		log.Fatalf("Redis连接失败: %v", err)
	}

	// 创建Gin引擎
	r := router.SetupRouter(config.DB)

	// 启动服务器
	addr := config.Conf.Server.Host + ":" + config.Conf.Server.Port
	utils.Logger.Printf("服务器启动在: %s", addr)
	if err := r.Run(addr); err != nil {
		log.Fatalf("服务器启动失败: %v", err)

	}

}
